control-flow-graph

    4

    1答えて

    gccが生成するアセンブリコードから制御フローグラフを抽出しようとしています。私はいくつかのIR(rtlフェーズ)のCFGを-fdump-rtl- *と-dvという引数を使って.vcgファイルにダンプすることができました。同じことをする方法はありますか?最終的なアセンブリコードは何ですか?私は、一般的な、ターゲットに依存しない、(vcg表現のような)解析されやすい表現が好きです。私のソースコードは

    1

    2答えて

    私はLLVMで作業を始めました。LLVMから制御フローグラフや基本ブロックを抽出するプログラム的な方法があるかどうかを知りたいと考えています/ clangそれらのいくつかの分析を行うために。ツールチェーンにフックして、まっすぐコンパイルする代わりにこの情報を引き出す方法はありますか?そうでない場合、代替案は何ですか?

    9

    2答えて

    objdump -dを呼び出して返されるアセンブリ結果のコントロールフローグラフを作成しようとしています。現時点で最善の方法は、結果の各行をリンクリストに入れ、各行のメモリアドレス、オペコード、オペランドを区切ることです。私はobjdumpの結果の規則的な性質に依存してそれらを分けています(メモリアドレスは各行を表す文字列の文字2から文字7までです)。 これが完了したら、私は実際のCFG命令を開始