From b6e90a1a1093210784ed3614b51ebcc31c2a1dcf Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 18 Dec 2019 10:44:29 -0800 Subject: llvm-cxxmap: fix support for remapping non-mangled names. Remappings involving extern "C" names were already supported in the context of s, but this support didn't work for remapping the complete mangling itself. (Eg, we would remap X but not foo itself, if foo is an extern "C" function.) --- llvm/docs/CommandGuide/llvm-cxxmap.rst | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'llvm/docs/CommandGuide') 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 `_>: + +.. code-block:: none + + # C function "void foo_bar()" is remapped to C++ function "void foo::bar()". + encoding 7foo_bar _Z3foo3barv + For convenience, built-in s such as ``St`` and ``Ss`` are accepted as s (even though they technically are not s). -- cgit v1.1