【发布时间】:2021-03-25 16:11:35
【问题描述】:
我正在编写一个 llvm pass,我需要一个函数的基本名称,例如,
修改后的名称是 ZSt3minIfERKT_S2_S2
解构后的名字是 float const& std::min(float const&, float const&)
但我需要基本名称,即 min
我已经看到一些 llvm API 定义在 -
#include "llvm/Demangle/Demangle.h"
#include <cxxabi.h>
#include "llvm/Demangle/ItaniumDemangle.h"
但我无法正确使用它。任何帮助表示赞赏
【问题讨论】:
-
这能回答你的问题吗? Unmangling the result of std::type_info::name。这个具体问题是关于类型名称的,但它包含很多信息,应该可以为函数做同样的事情。
-
另外,您是否尝试过
__func__或__FUNCTION__宏?还不够吗? -
我已经看到了,没有发现任何有用的东西