summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorEhsan Akhgari <ehsan.akhgari@gmail.com>2016-02-09 19:43:11 +0000
committerEhsan Akhgari <ehsan.akhgari@gmail.com>2016-02-09 19:43:11 +0000
commitae1cd1e7c301954bab703e9116a30b330902d43a (patch)
tree5e05d5fc1c72617e97fae831445f8c0d5db0f663 /docs
parent1172fe22d8efbf1a684349b53b637519e003d170 (diff)
downloadclang-ae1cd1e7c301954bab703e9116a30b330902d43a.tar.gz
clang-cl: Support loading plugins on Windows
This builds on the support being added to LLVM to import and export registries from DLLs. This will allow us to pick up the registry entries added in the DLL's copy of FrontendPluginRegistry. This will allow us to use plugins on Windows using: $ clang-cl -Xclang -load -Xclang plugin.dll \ -Xclang -add-plugin -Xclang foo git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@260265 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r--docs/ClangPlugins.rst5
1 files changed, 4 insertions, 1 deletions
diff --git a/docs/ClangPlugins.rst b/docs/ClangPlugins.rst
index 9a5bc14213..1aeff62e2f 100644
--- a/docs/ClangPlugins.rst
+++ b/docs/ClangPlugins.rst
@@ -37,11 +37,14 @@ Registering a plugin
====================
A plugin is loaded from a dynamic library at runtime by the compiler. To
-register a plugin in a library, use ``FrontendPluginRegistry::Add<>``:
+register a plugin in a library, use ``FrontendPluginRegistry::Add<>``.
+On Windows, you also need to export your plugin registry using
+``LLVM_EXPORT_REGISTRY``. Here is an example:
.. code-block:: c++
static FrontendPluginRegistry::Add<MyPlugin> X("my-plugin-name", "my plugin description");
+ LLVM_EXPORT_REGISTRY(FrontendPluginRegistry)
Putting it all together
=======================