0
我想刪除一個UnreachableInst,因爲之前的轉換已經使它可達。然而,調用eraseFromParent()給我一個格式不正確的BasicBlock,因爲UnreachableInst是它的BasicBlock的終結符。如何修復BasicBlock以終止UnreachableInst之前的指令?Llvm刪除終結者指令
我想刪除一個UnreachableInst,因爲之前的轉換已經使它可達。然而,調用eraseFromParent()給我一個格式不正確的BasicBlock,因爲UnreachableInst是它的BasicBlock的終結符。如何修復BasicBlock以終止UnreachableInst之前的指令?Llvm刪除終結者指令
每個基本塊必須以終止符結束。我認爲,以去除不可達指令的最直接的方法,那麼,是另一個終止取代它 - 例如,一個分支進入下一個基本塊,返回指令等
看看BasicBlockUtils.h中的llvm::ReplaceInstWithInst
用於方便地將一條指令替換爲另一條指令。