0
このIRの関数内でIRを生成しました。呼び出し元関数の基本ブロックに戻りたいと思います。ext_callee関数は次のように呼び出されます。この:LLVM IRは別の関数内で基本ブロックにジャンプします
%4 = call i1 @ext_callee(i32 32, i32 %3, i32 -4, i8* blockaddress(@tobecalled, %5), i8* blockaddress(@tobecalled, %7)).
最後の2つのパラメータが、私はこのext_callee関数内にジャンプしたいbasicblockアドレスです。 blockaddressパラメータの1つを使ってindirectbr命令を使用しようとしましたが、IRを実行するとセグメントエラーが表示されます。私はLLVM文書を検索しましたが、別の機能の基本ブロックにジャンプする方法は見つかりませんでした。誰かが手掛かりを持っていますか?どうもありがとう!
ありがとう、私は関数スコープルールが最初にIRで壊れている可能性があると考えました。それは少し難しいです。 :( – shikai
例えば関数抽出を考えてみましょう。 –