0
我想在使用LLVM的當前指令之後在我的代碼中插入函數調用。該函數調用將一個加載指令作爲參數,我也希望這個加載指令在當前指令執行後加載該值。如果我創建加載指令爲使用LLVM在當前指令之後插入函數調用
new loadinst(*ptr, name, current_instruction)
它在執行current_instruction之前加載ptr的值。需要幫助。
我想在使用LLVM的當前指令之後在我的代碼中插入函數調用。該函數調用將一個加載指令作爲參數,我也希望這個加載指令在當前指令執行後加載該值。如果我創建加載指令爲使用LLVM在當前指令之後插入函數調用
new loadinst(*ptr, name, current_instruction)
它在執行current_instruction之前加載ptr的值。需要幫助。
要創建新的函數調用,請使用CallInst::Create
。您可以在LLVM代碼庫中找到大量使用它的示例。它需要一系列參數,其中一個可以是代表load
指令的Value*
(或任何其他的)。
一個很好的例子是examples/Fibonacci/fibonacci.cpp
。
謝謝您的回覆。我已經知道如何創建函數調用。我正在使用IR Builder來做這件事。我遇到的唯一問題是設置新指令的位置。我現在已經開始工作了。 – Mahwish
@Mahwish爲什麼不在這個線程中分享你的答案,以便其他用戶也可以從你的努力中受益。 –