diff options
author | Richard Smith <richard@metafoo.co.uk> | 2019-12-18 10:44:29 -0800 |
---|---|---|
committer | Richard Smith <richard@metafoo.co.uk> | 2019-12-18 10:47:02 -0800 |
commit | b6e90a1a1093210784ed3614b51ebcc31c2a1dcf (patch) | |
tree | cdbfdf3f040b04eb151b5b92952db95ed6a3487d /llvm/docs/CommandGuide/llvm-cxxmap.rst | |
parent | cfe316007fb8492535d697717c24ce72621a8d5e (diff) | |
download | llvm-b6e90a1a1093210784ed3614b51ebcc31c2a1dcf.zip llvm-b6e90a1a1093210784ed3614b51ebcc31c2a1dcf.tar.gz llvm-b6e90a1a1093210784ed3614b51ebcc31c2a1dcf.tar.bz2 |
llvm-cxxmap: fix support for remapping non-mangled names.
Remappings involving extern "C" names were already supported in the
context of <local-name>s, but this support didn't work for remapping the
complete mangling itself. (Eg, we would remap X<foo> but not foo itself,
if foo is an extern "C" function.)
Diffstat (limited to 'llvm/docs/CommandGuide/llvm-cxxmap.rst')
-rw-r--r-- | llvm/docs/CommandGuide/llvm-cxxmap.rst | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/docs/CommandGuide/llvm-cxxmap.rst b/llvm/docs/CommandGuide/llvm-cxxmap.rst index b0bf1c4..dd38f31 100644 --- a/llvm/docs/CommandGuide/llvm-cxxmap.rst +++ b/llvm/docs/CommandGuide/llvm-cxxmap.rst @@ -71,6 +71,14 @@ indicating whether the following mangled name fragments are respectively. Blank lines and lines starting with ``#`` are ignored. +Unmangled C names can be expressed as an ``encoding`` that is a (length-prefixed) +<`source-name <http://itanium-cxx-abi.github.io/cxx-abi/abi.html#mangle.source-name>`_>: + +.. code-block:: none + + # C function "void foo_bar()" is remapped to C++ function "void foo::bar()". + encoding 7foo_bar _Z3foo3barv + For convenience, built-in <substitution>s such as ``St`` and ``Ss`` are accepted as <name>s (even though they technically are not <name>s). |