目標の記述クラス - 50 LLVM LLVMバックエンド文書の日に3を解析

免責事項:この記事はブロガーオリジナル記事ですが、許可ブロガーなく再生してはなりません。https://blog.csdn.net/snsn1984/article/details/90341146

芸術と明確にリンクし、7つのステップの間に旧6、7対応のほとんど。だから我々は、詳細な分析行くしようとしている:説明クラスをターゲット:抽象的な対象のインターフェイスでの説明(コードアドレス:/ LLVM /ターゲット/を含める)を 。

ターゲット記述クラスの特徴以下の主なポイント:

1、ターゲット記述クラス、最初の6つの最もLLVMバックエンドのほとんどは、主な目標は、マシンの抽象的な記述を提供することで、任意の特定のクライアントに依存しません。

図2に示すように、ターゲットの記述クラスはクラスに含まれ、抽象的にはターゲットのパフォーマンス、および特定のコード生成アルゴリズム何を捕捉するように設計されています。

3、(DataLayout除く)対象の記述クラスのすべて、それは親クラスの実装の(これらのクラスのサブクラスを達成し、特定の目標を達成するために)行うように設計された具体的な目標、これらのクラスの実装は、仮想関数が実装されていますA。

4 TargetMachineなど初期エントリクラスは、すべての情報は、インタフェース特定のターゲットを介して取得することができる、記載の完全なマシンターゲット・マシンです。(ターゲット・マシンの完全なマシン記述のプライマリインターフェイスはすべてのターゲット固有の情報は、このインタフェースを介してアクセス可能でなければなりません。)ターゲットマシン上の情報を得るために、このクラスは、*情報を見る仮想関数のシリーズで構成されて、これらの仮想関数ターゲットマシンの具体的な実現に実装を行います。

内のすべてのターゲット記述のクラスで、要約すると、TargetMachineなどとDataLayoutは特別です。TargetMachineなどが初期エントリを達成するために、特定のターゲットマシンを訪問することで、インターフェースは特定の情報にアクセスすることができ、ターゲットマシンが多数含まれています。ターゲット記述クラスとクラスDataLayout含む/ LLVM / IR / DataLayout.hに格納され、非膨張のみです。特定のコード:DataLayout.h

加えて、対象の説明クラスではTargetMachineなどDataLayout二つの特別なクラスよりも、次のクラスがあります。

TargetLowering  (含む/ LLVM / codegenの/ TargetLowering.h)

TargetRegisterInfo  (含む/ LLVM /コード生成/ TargetRegisterInfo.h)

TargetInstrInfo  (含む/ LLVM /コード生成/ TargetInstrInfo.h)

TargetFrameLowering  (含む/ LLVM /コード生成/ TargetFrameLowering.h)

TargetSubtarget(TargetSubtargetには現在、クラス、唯一持っていないTargetSubtargetInfoのカテゴリを、アドレス:含ま/ LLVM /コード生成/ TargetSubtargetInfo.h )

TargetJITInfo(今なしTargetJITInfoカテゴリ)

-------------------------------------------------- -------------------------------------

注意!注意!注意!

ドキュメントには、最新のコードの変更に追いついていません。そこで、我々は言及したターゲットの説明クラスコードアドレスのを:/ LLVM /ターゲット/が含まれ、完全に適用されています。我々はTargetMachineなどのクラスに加えて、まだここにいる、他のクラスはすでにを変更しました。ほとんどのカテゴリの下に含める/ LLVM /コード生成/ディレクトリに移動し、提出されたノード:rL318490  。

 


関連コンテンツ:

小さな天使父親:三〇から七LLVMバックエンドのプロフィールのLLVM毎日話(杭州シェアPPT)

小さな天使父親:四〇から七LLVMバックエンド文書の解析のLLVM毎日話

小さな天使父親:1を解析し、毎日四〇から八LLVMバックエンド文書についてLLVMの話

小さな天使父親:2を解析する毎日四〇から九LLVMバックエンド文書についてLLVMの話

 

おすすめ

転載: blog.csdn.net/snsn1984/article/details/90341146