Top SOFT : NET : studio A@T : my DataBase [Browser Independent.] [Link Inhibited.]
GCC : java
紹介 : 履歴 : ▼取説 : その他

X680x0 (Human68k & SX WINDOW) 対応
Gnu C Compiler modified by Charlie


目次

  1. 内容
  2. 動かない時は!!
  3. FSF 版、まりこ版との仕様比較(概要)
  4. まりこ版との仕様の違い
  5. Charlie 版独自の仕様
  6. GCC version 2 としての仕様
  7. original 2.6.3(by FSF)との相違、その他
  8. 権利など
  9. 転載・配布など
  10. 謝辞

  1. 内容

    Charlie 版 GCC として配布されているファイルの一覧を示します。 ただし、全てのファイルが単一のアーカイブとして配布されているとは 限りません。

      1st.pen(tex)
      2nd.pen(tex)
    
      gcc.doc.html
      gcc2.doc.html
      gcc3.doc.html
    
      COPYING FSF    オリジナルのライセンス表示
      COPYING.LIB    FSF オリジナルのライブラリに関するライセンス表示
      NEWS           FSF による、最近のバージョンアップ概要
      PROBLEMS       FSF による、未解決不具合
      PROJECTS       FSF による、最適化をより有効にするソース記述のコツ
      SERVICE        FSF のスタッフリスト
    
      gcc2.doc
      objc/readme.x68  Objective-C のインストールについて補足
      objc/readme.doc  Objective-C の文法
    
      gcc2.x  コンパイルドライバ
      g2cpp.x  プリプロセッサ
    
      g2as.x  アセンブラ
      g2lk.x  リンカ
    
      g2cc1.x      Cコンパイラ
      g2cc1plus.x  G++コンパイラ
      g2cc1obj.x   Objective-C コンパイラ
    
      libgcc.a      Human68k 用ライブラリ
      libgccsx.a    SX 用ライブラリ
      libobjc.a     Human68k 用 Objective-C ライブラリ
      libobjcsx.a   SX 用 Objective-C ライブラリ
    
      as/ アセンブラのドキュメントなど
      lk/ リンカのドキュメントなど
    
      include/objc/ Objective-C 用のヘッダファイル
    
      objc/sample/ Objective-C のサンプルプログラム
    
    1. まず、あなたのシステムが以下の環境を満たしているかどうかを確認して下さい。

      • 十分なmemory (4MB〜)
        コンパイラ本体だけでも 1MB 強ですので… (^_^;
        自己コンパイル (数千〜1万ステップの C のプログラム) には フリーエリア 5.7MB と GRAM を要しました。
      • TwentyOne
      • LIBC (libc.a)
        ライブラリを明示的に指定するのなら LIBC 以外でも可能
      • HUPAIR 対応のシェル
        ただしコンパイルドライバに長いコマンドラインを渡す場合のみ

    2. コンパイルドライバ gcc2.x はパス (環境変数 path) の通っている ディレクトリに、ライブラリは lib の通っているディレクトリに 格納して下さい。

    3. その他の実行ファイルを一つのディレクトリに格納し、環境変数 COMPILER_PATH にディレクトリ名を指定して下さい (gcc2.x はコンパイラ本体やアセンブラの検索を path よりも 優先して環境変数 COMPILER_PATH から行います)。

    4. 実行ファイルは execd に対応していますので、拡張子「.x」を 取り除いても実行ファイルとして認識されます。 優先順位は「.x 無し」→「.x 有り」です。

    以上でインストールは完了しました。

  2. 動かない時は!!

    予期した動作をしない場合、まずは付属のドキュメントなどを再度 読み直してみて下さい。前のバージョンから仕様が変更されているかも しれません。

    ドキュメントを読んでも明らかではない、あるいはバスエラー等 どうみてもバグとしか思えない状態に陥る、そんな場合は作者に報告し て下さい。

    GCC2 は巨大なプログラムですから、バグの存在は分かっていても 直ちに原因を突き止められないこともしばしばです。不具合の報告を される時には、不具合を再現可能にする情報をできる限り添えて下さい。 すなわち、

    などです。 サポート窓口へメイルを出す

  3. FSF 版、まりこ版との仕様比較(概要)

  4. まりこ版との仕様の違い

    Charlie 版 は GCC 2.6.3 をベースに、まりこ版に近い改造を 施してありますが細かい違いもあります。この章ではまりこ版を 使用しているユーザーを対象にそういった仕様の違いを解説します。 なお、ここに明言されていないものでもまりこ版の Ver.1.41 以降の 改良、仕様変更には対応していないことがあります。

    まりこ版と Charlie 版の機能比較

    まりこ版 Charlie 版
    環境変数
    MARINA GCC2_ED
    MARIKO GCC2_OPTION0
    GCC_OPTION GCC2_OPTION1
    GCC_AS 同等の機能なし
    GCC_LINK   〃
    SX モード
    -SX まりこ版と同等
    -z-stack=
    -z-heap=
    LASCII 文字列
    SXCALL
    DOSCALL
    remote
    relocate
    common
    -fpicでSXモード -fpic は使用できない
    拡張機能
    pcr まりこ版と同様
    -fansi-only
    2 進表記中の「_」
    ジャンプ系命令
    デフォルトは jbsr まりこ版と同様
    -fall-bsr まりこ版と同様
    -fall-jsr は廃止 -fall-jsr は存在
    -mregparm 動作チェック未済
    コマンドライン
    自力 wild-card展開 展開機能なし(HUPAIR 対応)
    -+-+- インダイレクト機能なし
    テンポラリの .o ファイルを生成するディレクトリ
    カレント 環境変数 temp

  5. Charlie 版独自の仕様

    環境変数 GCC2_OPTION2 の各文字の意味

    文字 機能
    # 現在処理中の関数名、処理進行度を表示する
    B 関数の真偽値引数を最適化する
    D コンパイラが必要だと判断した時に nop を出力させる
    I 浮動小数点数値をメモリを介さず即値で扱うよう試みる
    L ループの条件判定に関する最適化を単純に行う
    l ループの条件判定に関する最適化を慎重に行う
    M 複数文字の文字定数の warning を抑制する
    S ビット数以上の右シフトでも asr を出力する
    U 未宣言の識別子は一度しか報告しない旨のwarningを抑制する
    Z メモリに 0 を代入する際にはレジスタを介するようにする

  6. GCC version 2 としての仕様

  7. original 2.6.3(by FSF)との相違、その他

  8. 権利など

     全体は GPL に準拠していますが、アセンブラ/リンカは GNU ware ではありませんので、取り扱いには十分注意して下さい。

    なお、g2as に関しては

    という範囲内で使用・配布を認められています。

  9. 転載・配布など

  10. 謝辞

    初期の段階から協力をいただいている中村ちゃぷに氏、HAS,FAS,HLK のソースを提供してくださった YuNK 氏、H.O 氏、SALT 氏、バグ潰し の叩き台として SXgzip を与えてくださった BAA 氏、連日の修正で 負担をお掛けしたひどり氏、そして network SX の皆さんに感謝いたし ます。 また、移植にあたって数多くの作品を利用させていただきました。 関係者の方々に感謝いたします。以下にその一部を掲示させていただき ます。

     GCC まりこ版 1.39 X6_05 〜 1.28(TOOLS)
     microEmacs J1.31
     Gnu Make/Awk/Sed
     GDB
     HAS/FAS
     HLK
     HAR
     LIBC
    
     TwentyOne
     hcommand
     ITA TOOLS
     lndrv/execd
     ksh/bash
    
     TMN/tmsio
     Gnu zip/tar
     LHA/ISH
     Bdif/Bup
    
     SXgzip

^  GCC for Human68kのトップページへ戻る

Link point is http://www.kyagroup.com/soft/gcc/