我正在執行一個LLVM pass,並想通過命令行打開或關閉一些選項,特別是我想爲我的pass傳遞一個-v詳細模式。如何將標誌傳遞給LLVM傳遞?
我找不到任何文檔中提到的傳遞命令行標誌的機制,是否存在?
我正在執行一個LLVM pass,並想通過命令行打開或關閉一些選項,特別是我想爲我的pass傳遞一個-v詳細模式。如何將標誌傳遞給LLVM傳遞?
我找不到任何文檔中提到的傳遞命令行標誌的機制,是否存在?
如果只有一個選項有兩個可能的值,最簡單的做法是在兩個不同的名稱下注冊相同的兩次。我不知道任何通用解決方案,特別是可以與opt
一起使用的解決方案。
我找到的解決方案是使用LLVM的一般的CommandLine API:http://llvm.org/docs/CommandLine.html
工程動態加載的過程,當如預期opt
。
另一個有用的技巧是:
#define DEBUG_TYPE "my-special-name"
...
#include "llvm/Support/Debug.h"
...
撒上一堆調試輸出周圍的:
DEBUG(dbgs() << "Original Frame Size: " << FrameSize << "\n");
.. 。
DEBUG(Node->dump(CurDAG));
然後,在命令行上: ... -debug,只有我-特殊名稱... 會得到你的輸出。
如果您的密碼與鐺前端運行,你可以使用:
... -mllvm -debug,只有我-特殊名稱...
謝謝,這可能在未來派上用場。 – Tzafrir 2011-02-02 13:59:30
謝謝,我發現了一個更普遍解決方案(下面回答我自己)。 – Tzafrir 2011-01-31 18:22:03