フィードされた IR コードを再生成できる LLVM API コードを生成しようとしています。この質問などのさまざまな質問を介して発見したように、ある時点で、この目標を達成するために次のことを行うことが可能でした:
clang++ -S -O0 -emit-llvm MyFile.cpp -o MyIR.ll
llc -march=cpp MyIR.ll -o MyIR_Maker.cpp
ただし、次のエラーが表示されます: llc: エラー: ターゲット 'cpp' が無効です。さらに調査したところ、バージョン 3.1 で c バックエンドが削除されたときに、以前のバージョンの LLVM で同じ問題が発生したことがわかりました。ただし、私はcppを使用しています。これにより、何らかの理由で私のバージョンのllvmにcppバックエンドが存在しないと思われます。
ここから本当に知りたいのは、これまでの分析が正しい場合、cpp バックエンドを有効にする方法、または llc を希望どおりに使用できる状態にする方法です。もちろん、私が間違っていたり、別の方法がある場合は、それを受け入れます。
使用するために選択したバージョンは LLVM 3.6 です。これは、OS X で brew を介してインストールされました。よろしくお願いします。
編集:この質問は、おそらく同様の質問として指摘されています。ただし、その質問は LLVM 3.2 の特定のコンテキストで行われました。私の質問はバージョン 3.6 の現在の状況に関するものであり、現時点で実際の解決策がある可能性があるためです。その質問に対する唯一の答えは、一般的な外部リソースを指しており、実際の解決策が何であるかを十分に説明していません。