9
我正在嘗試使LLVM
內聯函數庫。使LLVM內嵌函數庫
我有LLVM位碼文件(手動生成),我與llvm-link
連接在一起,我也有一個庫(用C語言編寫)編入位碼clang
和歸檔llvm-ar
。我設法將所有內容鏈接在一起並執行,但我無法設法讓LLVM
內嵌函數庫。有關如何完成這件事的任何線索?
我正在嘗試使LLVM
內聯函數庫。使LLVM內嵌函數庫
我有LLVM位碼文件(手動生成),我與llvm-link
連接在一起,我也有一個庫(用C語言編寫)編入位碼clang
和歸檔llvm-ar
。我設法將所有內容鏈接在一起並執行,但我無法設法讓LLVM
內嵌函數庫。有關如何完成這件事的任何線索?
將位代碼文件與庫鏈接在一起之後,是否對鏈接的位代碼運行Internalize傳遞?內部傳遞使得所有函數(除了main()
之外)都是靜態的,並告訴優化器/代碼生成器可以安全地內聯函數,而不需要爲某些(不存在的)外部引用保留副本。
我用llvm-ld
借用的代碼手動將我的位代碼文件和位代碼庫鏈接在一起,我做了內部化傳遞,但我不確定llvm-link
是否執行了內部傳遞。
像魅力一樣工作 – capitrane 2010-04-29 20:30:18
如何開始內部通行證? – osgx 2010-11-23 15:29:32
@osgx:看看'createInternalizePass'('lib/Transforms/IPO/Internalize.cpp')。 – 2013-07-08 16:32:54