サイトトップへ
OSASK.NET
  サイトトップへ       新掲示板(閉鎖済)   Wiki(凍結済)   旧掲示板(廃止済)   ニュース(廃止済)  
4: 2005-10-19 (水) 22:59:47 ソース
Line 1: Line 1:
-* SGO (すごー) 
--とりあえずいつ作るか分からないのでネタページ。まがいなりにも動くようになったら即座にOS-Wikiに引っ越し。 
--GOはでかすぎるよ、もっとちっこくてコンパイル時間の短いやつを作って、デバッグに活用しようという、そういうCコンパイラ。 
--もちろんセルフコンパイルくらいはできる。 
-*** 特徴 
--100KB未満のcc1(50KB未満になりそうな気もちょっとする)。 
--ANSI-Cとして一通りの機能を実装(コンパイラとしては)。でも微妙に妥協する可能性もあり。 
--(出力依存部をいじると色々変えられるが)とりあえず、nask用のコードを出力。 
---出力依存部をいじって、これをgas出力やASKA出力にすることも可能である。 
--まともな最適化はしないのだが、i += j;を EAX = i; EDX = j; EAX += EDX; i = EAX;にするほど馬鹿ではない(EAX = j; i += EAX;になる予定)。 
--セグメンテーションに対応したC言語になりうる(この機能をOFFにすることもできる)。 
---たとえばスタティックデータをコードセグメントに置くとか(ちゃんとCS:がついたコードを出しますよ)、DS == SSであることを前提にしないコードも書ける。 
---これらは#pragmaで拡張されていて、この機能を使ったソースは当然GOではコンパイルできない。SGOでコンパイルする(SGOとGO混在も、ソースを分ければ記述できる)。 
--EAXに値を返さないような関数やレジスタ渡しの関数も、ASKAやnaskやインラインアセンブラを使わずに利用できるし、記述できる。 
--レジスタ変数として宣言すれば、最初の3つまではレジスタに割り振られることを保証。しかし4つめ以降はただの変数。 
- 
-*** 名前について 
--GOのシンプル版、という意味でSを頭にくっつけた。でもよく考えるとgcc由来の部分はないので、もはやGの文字が残っている必然性はない気もする。 
--SGOはプリプロセッサがない(まあ将来は作るかもしれないけどね)。cpp0をそのまま使う。その意味では、まあgcc由来の部分があるといえるかもしれない。 
- 
-* こめんと欄 
--すごぉ。期待。 -- [[名無しさん]] SIZE(10){2003-10-11 (土) 12:58:30} 
--古代、ccは5kbだったらしいです。 -- [[名無しさん]] SIZE(10){2003-10-11 (土) 21:50:29} 
--すばらしすぎる世界だ・・・。というかANSI-Cじゃなくてもいいなら、僕もそれを目指してみたりして(でも僕の実力じゃ無理です)。 -- [[K]] SIZE(10){2003-10-11 (土) 22:09:58} 
--目下のライバルは[[dev-j:TinyCC]]かな。。 およそ100k。 -- [[.mjt]] SIZE(10){2003-10-11 (土) 23:13:12} 
--やべー、smallestとかかいてある・・・。多分勝てない・・・。プリプロセッサもアセンブラもリンカも込みらしい。というか、こいつを移植するほうが早い? -- [[K]] SIZE(10){2003-10-11 (土) 23:58:44} 
--nask(27.0KB)とcpp0(37.5KB)とobj2bim(7.5KB)とbim2bin(7.0KB)でもう79KBだ・・・。 -- [[K]] SIZE(10){2003-10-12 (日) 00:14:47} 
--PDP-11 UNIX(5th-7th Ed)なら、今BSDライセンスで公開されているので、参考にしてみると良いかも。(SCOが電波発言してても気にしない。) -- [[名無しさん]] SIZE(10){2003-10-12 (日) 11:31:38} 
--ちなみにこのあたり。http://minnie.tuhs.org/UnixTree/ -- [[名無しさん]] SIZE(10){2003-10-12 (日) 11:49:42} 
--最近ではWin版のTinyCCがあるらしね。[[dev-j:TinyCC]] -- [[名無しさん]] SIZE(10){2004-05-15 (土) 10:28:26} 
--本家TinyCC 0.9.23がPEバイナリ生成に対応しているようです。 -- [[名無しさん]] &new{2005-08-04 (木) 16:05:34}; 
--ヘタレな僕でもプリプロセッサくらいなら何とかなるかも…(時間があればですが) -- ''ZwergSpitz'' &new{2005-10-19 (水) 22:59:47}; 
- 
-#comment 

トップ   差分 バックアップ 複製 名前変更 リロード印刷に適した表示   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ
新着

目次
メンバー一覧


最新の20件
2016-10-01 2016-09-08
  • @MenuBar.
2016-09-07 2016-09-04 2016-08-15 2015-09-23 2014-07-30 2014-07-04 2014-02-04 2013-10-26 2013-06-21 2013-06-17 2013-06-15 2013-04-02 2013-02-09 2013-02-04 2012-12-25 2012-12-01 2012-05-28 2012-03-31

トピック一覧
一般用コメント最新
新掲示板lina
2016/9/5 20:58
SandBoxゲスト
2016/9/4 12:01
RecentDeletedlina
2015/6/2 19:29
Old-OSASK-MLlina
2014/6/29 9:14
hideyosi/メールhideyosi
2014/1/6 20:17
hideyosi/募集中lina
2013/11/8 19:56

このサイトは川合秀実から委託を受けて、OSASKコミュニティによって管理・運営されています。