* 没ネタ集 -(by [[K]], 2013.04.02) ** 没ページ集 -面倒になってきたので活きているページも含みます。 -[[page0000]]: [活] OSECPUの詳しい説明 -[[page0001]]: OSECPUと第三世代OSASKとの違いのメモ --OSECPUを理解するうえでは、第三世代OSASKとの差異を知る必要はないので没。 --そもそも第三世代OSASKの仕様も流動的で最新ではない。 -[[page0002]]: OSECPUの仮想CPUの命令セット --最初の構想段階のもの。古くなったので没。 -[[page0003]]: [活] なぜ仮想CPUを利用することにしたのか? -[[page0004]]: OSECPUの仮想CPUのアーキテクチャ --一部の内容が古くなってきたんで没。 -[[page0005]]: [活] OSECPUが検出できる脆弱性 -[[page0006]]: [活] OSECPUでのポインタの扱い -[[page0007]]: [活] OSECPUでの関数呼び出し -[[page0008]]: OSECPUの仮想CPUの命令セット --リビジョン0001のもの。新リビジョンが出たので没。 -[[page0009]]: [活] OSECPUの基本設計思想 -[[page0010]]: [活] エラーの話題 -[[page0011]]: [活] OSECPUのQ&A -[[page0012]]: OSECPUの仮想CPUの命令セット --リビジョン0002のもの。新リビジョンが出たので没。 -[[page0013]]: OSECPUの仮想CPUの命令セット --リビジョン0003のもの。新リビジョンが出たので没。 -[[page0014]]: [活] JITコンパイラの中身 -[[page0015]]: OSECPUの仮想CPUの命令セット --リビジョン0004のもの。新リビジョンが出たので没。 -[[page0016]]: lbstk00の説明 --lbstk01が出たので没。 -[[page0017]]: [活] lbstk01の説明 -[[page0018]]: [活] OSECPUはどのくらいセキュアか -[[page0019]]: [活] OSECPUの仮想CPUの命令セット -[[page0020]]: [活] アクセス権問題について -[[page0021]]: [活] 没ネタ集 -[[page0022]]: -[[page0022]]: [活] 高速化のアイデア ** 没になった命令体系 -リビジョン0004→リビジョン0005の際には、以下のようなフォーマットで即値に対応しようかと考えたこともありました。 [op] [Rxx] [Rxx] [Rxx] [im32] --この形式だと、im32を参照したいフィールドにFEを入れておくのです。FEフィールドがない場合は、im32部分はただのゴミです。 -LIMM(R3F,...); プリフィクス方式とどちらにするかしばらく迷いました。 -これだと多くの命令が8バイトになり、まずそこが少し気になりました。 --でもLIMM_R3Fプリフィクスだと即値を使うときは10バイトになり、即値の利用頻度によってはバイト数のメリットは逆転します。 --まあOSECPUの今のコードはバックエンド用でしかないのでバイト数はそんなに気にすることはないのですが。 -決め手は、LIMM_R3F方式だと即値形式に対応してないJITコンパイラでも問題なく動くということでした。つまり移植の際に即値形式に対応しないという選択肢もあるわけです。選択肢が多いほうが移植は容易だろうと思い、LIMM_R3F方式を選択しました。 ** こめんと欄 -このページにこめんと欄はありません。このページの内容にコメントしたいときは[[impressions]]にお願いします。