Rename the title

This commit is contained in:
Ushitora Anqou 2020-03-30 22:24:28 +09:00
parent 7a334064f0
commit a3470f57e3
2 changed files with 19 additions and 5 deletions

View File

@ -1,9 +1,9 @@
# 自作ISAのためのLLVMバックエンドを書く薄い本予定
# 手を動かせばできるLLVMバックエンド チュートリアルWIP
<a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by/4.0/80x15.png" /></a>
[![Build Status](https://travis-ci.org/ushitora-anqou/write-your-llvm-backend.svg?branch=master)](https://travis-ci.org/ushitora-anqou/write-your-llvm-backend)
別に売る気はない。鋭意執筆中。
自作ISAのためのLLVMバックエンドをイテレーティブに作ります。鋭意執筆中。
[ここからmasterが読めます。](https://ushitora-anqou.github.io/write-your-llvm-backend/)

View File

@ -1,4 +1,4 @@
= 自作ISAのためのLLVMバックエンドを書く薄い本
= 手を動かせばできるLLVMバックエンド チュートリアル
艮 鮟鱇 <ushitora@anqou.net>
:toc: left
:icons: font
@ -6,7 +6,8 @@
== FIXME
文中のFIXME他直すべきものをここにリストにする。
AsciiDocのコメントを用いて文中にFIXMEを仕込む。
その他のFIXME全般的なものなどをここにリストにする。
* だ・である調をです・ます調に変える。
@ -271,8 +272,21 @@ LLVM (http://llvm.org/):
この章ではLLVMバックエンドの一部としてアセンブラを実装します。
具体的にはLLVMのMCLayerを実装し、アセンブリからオブジェクトファイルへの変換を可能にします。
一度にアセンブラ全体を作るのは難しいため、まずレジスタのみを使用する演算命令に絞って実装し、
その後メモリを使用する命令をカバーします。
=== 簡易的なアセンブラを実装する
=== TableGenファイルを追加する
LLVMのDSLであるTableGenを使用してCAHPのレジスタや命令について記述します。
追加スべきTableGenファイルはおおよそ次のとおりです。
* `CAHPRegisterInfo.td`: レジスタを定義。
* `CAHPInstrFormats.td`: 命令形式を定義。
* `CAHPInstrInfo.td`: 命令を定義。
* `CAHP.td`: 全体に関することを定義。
=== `MCTargetDesc` を追加する
=== `CAHPAsmParser` を追加する
=== `CAHPInstPrinter` を実装する
=== テストを書く
=== メモリ演算を追加する