日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。
4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.3-RELEASE-K, 13.0-RELEASE-K から 13.2-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
AS(1) GNU Development Tools AS(1) 名称 AS - ポータブル GNU アセンブラ 書式 as [-a[cdhlns][=file]] [--alternate] [-D] [--defsym sym=val] [-f] [-g] [--gstabs] [--gstabs+] [--gdwarf-2] [--help] [-I dir] [-J] [-K] [-L] [--listing-lhs-width=NUM] [--listing-lhs-width2=NUM] [--listing-rhs-width=NUM] [--listing-cont-lines=NUM] [--keep-locals] [-o objfile] [-R] [--reduce-memory-overheads] [--statistics] [-v] [-version] [--version] [-W] [--warn] [--fatal-warnings] [-w] [-x] [-Z] [@FILE] [--target-help] [target-options] [--|files ...] ターゲット Alpha オプション: [-mcpu] [-mdebug | -no-mdebug] [-relax] [-g] [-Gsize] [-F] [-32addr] ターゲット ARC オプション: [-marc[5|6|7|8]] [-EB|-EL] ターゲット ARM オプション: [-mcpu=processor[+extension...]] [-march=architecture[+extension...]] [-mfpu=floating-point-format] [-mfloat-abi=abi] [-meabi=ver] [-mthumb] [-EB|-EL] [-mapcs-32|-mapcs-26|-mapcs-float| -mapcs-reentrant] [-mthumb-interwork] [-k] ターゲット CRIS オプション: [--underscore | --no-underscore] [--pic] [-N] [--emulation=criself | --emulation=crisaout] [--march=v0_v10 | --march=v10 | --march=v32 | --march=common_v10_v32] ターゲット D10V オプション: [-O] ターゲット D30V オプション: [-O|-n|-N] ターゲット i386 オプション: [--32|--64] [-n] [-march=CPU] [-mtune=CPU] ターゲット i960 オプション: [-ACA|-ACA_A|-ACB|-ACC|-AKA|-AKB| -AKC|-AMC] [-b] [-no-relax] ターゲット IA-64 オプション: [-mconstant-gp|-mauto-pic] [-milp32|-milp64|-mlp64|-mp64] [-mle|mbe] [-mtune=itanium1|-mtune=itanium2] [-munwind-check=warning|-munwind-check=error] [-mhint.b=ok|-mhint.b=warning|-mhint.b=error] [-x|-xexplicit] [-xauto] [-xdebug] ターゲット IP2K オプション: [-mip2022|-mip2022ext] ターゲット M32R オプション: [-m32c|-m16c] ターゲット M32R オプション: [--m32rx|--[no-]warn-explicit-parallel-conflicts| --W[n]p] ターゲット M680X0 オプション: [-l] [-m68000|-m68010|-m68020|...] ターゲット M68HC11 オプション: [-m68hc11|-m68hc12|-m68hcs12] [-mshort|-mlong] [-mshort-double|-mlong-double] [--force-long-branches] [--short-branches] [--strict-direct-mode] [--print-insn-syntax] [--print-opcodes] [--generate-example] ターゲット MCORE オプション: [-jsri2bsr] [-sifilter] [-relax] [-mcpu=[210|340]] ターゲット MIPS オプション: [-nocpp] [-EL] [-EB] [-O[optimization level]] [-g[debug level]] [-G num] [-KPIC] [-call_shared] [-non_shared] [-xgot [-mvxworks-pic] [-mabi=ABI] [-32] [-n32] [-64] [-mfp32] [-mgp32] [-march=CPU] [-mtune=CPU] [-mips1] [-mips2] [-mips3] [-mips4] [-mips5] [-mips32] [-mips32r2] [-mips64] [-mips64r2] [-construct-floats] [-no-construct-floats] [-trap] [-no-break] [-break] [-no-trap] [-mfix7000] [-mno-fix7000] [-mips16] [-no-mips16] [-msmartmips] [-mno-smartmips] [-mips3d] [-no-mips3d] [-mdmx] [-no-mdmx] [-mdsp] [-mno-dsp] [-mdspr2] [-mno-dspr2] [-mmt] [-mno-mt] [-mdebug] [-no-mdebug] [-mpdr] [-mno-pdr] ターゲット MMIX オプション: [--fixed-special-register-names] [--globalize-symbols] [--gnu-syntax] [--relax] [--no-predefined-symbols] [--no-expand] [--no-merge-gregs] [-x] [--linker-allocated-gregs] ターゲット PDP11 オプション: [-mpic|-mno-pic] [-mall] [-mno-extensions] [-mextension|-mno-extension] [-mcpu] [-mmachine] ターゲット picoJava オプション: [-mb|-me] ターゲット PowerPC オプション: [-mpwrx|-mpwr2|-mpwr|-m601|-mppc|-mppc32|-m603|-m604| -m403|-m405|-mppc64|-m620|-mppc64bridge|-mbooke| -mbooke32|-mbooke64] [-mcom|-many|-maltivec] [-memb] [-mregnames|-mno-regnames] [-mrelocatable|-mrelocatable-lib] [-mlittle|-mlittle-endian|-mbig|-mbig-endian] [-msolaris|-mno-solaris] ターゲット SPARC オプション: [-Av6|-Av7|-Av8|-Asparclet|-Asparclite -Av8plus|-Av8plusa|-Av9|-Av9a] [-xarch=v8plus|-xarch=v8plusa] [-bump] [-32|-64] ターゲット TIC54X オプション: [-mcpu=54[123589]|-mcpu=54[56]lp] [-mfar-mode|-mf] [-merrors-to-file <filename>|-me <filename>] ターゲット Z80 オプション: [-z80] [-r800] [ -ignore-undocumented-instructions] [-Wnud] [ -ignore-unportable-instructions] [-Wnup] [ -warn-undocumented-instructions] [-Wud] [ -warn-unportable-instructions] [-Wup] [ -forbid-undocumented-instructions] [-Fud] [ -forbid-unportable-instructions] [-Fup] ターゲット Xtensa オプション: [--[no-]text-section-literals] [--[no-]absolute-literals] [--[no-]target-align] [--[no-]longcalls] [--[no-]transform] [--rename-section oldname=newname] 解説 GNU as とは、実は一連のアセンブラのことです。もしあるアーキテクチャで GNU アセンブラを使う (もしくは、使ったことがある) ならば、他のアーキテ クチャで使う時もかなり似た環境となります。それぞれのバージョンは他の バージョンと共通の部分が多くあります。例えば、オブジェクトファイル フォーマットやほとんどのアセンブラディレクティブ (疑似命令 (pseudo-ops) とも呼ばれます)、アセンブラシンタックスなどです。 as が作られた第一の目的は、GNU C コンパイラ "gcc" の出力をリンカ "ld" で使用できるようアセンブルすることです。確かに、as が、ネイティブアセン ブラがアセンブルできるものはすべて正しくアセンブルできるようにしようと してきました。例外は明確に文書化されています。このことは、as の用いるシ ンタックスが、同一アーキテクチャの他のアセンブラと同じである、というこ とを意味するものではありません。たとえば、680x0 のアセンブラ言語のシン タックスには互換性のないバージョンが存在することが知られています。 as の起動 1 回ごとに、ちょうど 1 つのソースプログラムだけをアセンブルし ます。ソースプログラムは、1 つ以上のファイルから構成されます (標準入力 もファイル 1 つとみなします)。 as に与えるコマンド行には、0 個以上の入力ファイル名が含まれます。入力 ファイルは、(左のファイル名から開始して右へ向って) 読み込まれます。特別 な意味が無いコマンド行引数は、(どんな位置であっても) 入力ファイル名であ るとみなされます。 もし as にファイル名が指定されなければ、1 つの入力ファイルが as の標準 入力 (ふつうは端末) から読み出されます。ctl-D をタイプすることで、これ 以上アセンブルするプログラムが存在しないことを as に通知します。 コマンド行上で明示的に標準入力を指定する必要のある時は、-- を使ってくだ さい。 ソースが空の場合、as は、小さな空のオブジェクトファイルを作成します。 as は、警告およびエラーメッセージを標準エラー出力 (通常は端末) へ出力し ます。as がコンパイラによって自動起動された場合は、この限りではありませ ん。警告とは、欠陥のあるプログラムのアセンブルを続行するために as が仮 定した内容を報告したものです。エラーは、アセンブルを続行できない重大な 問題を表します。 as を GNU C コンパイラから起動している場合、-Wa オプションを使用してア センブラへの引数を渡せます。それぞれのアセンブラ引数 (と -Wa) は、コン マで区切られます。例えば次のようになります。 gcc -c -g -O -Wa,-alh,-L file.c これは、2 個のオプションをアセンブラに渡します: すなわち -alh (高級言語 とアセンブラソースのリストを標準出力へ出力) と -L (ローカルシンボルをシ ンボルテーブルに残す) です。 通常は、この -Wa の機構を使用する必要はありません。なぜならば、コンパイ ラがアセンブラに対し、多くのコンパイラコマンド行オプションを渡すからで す (GNU コンパイラドライバを -v オプション付きで起動することで、アセン ブラを含む各コンパイルのパスに対してどのようなオプションを渡すのか、正 確に調べることができます)。 オプション @file file からコマンドラインのオプションを読み込みます。読み込まれたオプ ションは、オリジナルの @file オプションの場所に代わって挿入されま す。file が存在しないか、または読み込むことができないなら、オプショ ンは、文字通りに扱われ、取り除かれません。 file 中のオプションは、空白類によって分離されます。空白類の文字は、 シングルクォートまたはダブルクォートのいずれかで全体のオプションを 囲むことによって、オプションに含めることができます。(バックスラッ シュを含む) 任意の文字は、バックスラッシュを文字を前に置くことに よって、含めることができます。file は、それ自体に、追加の @file オ プションを含むことができます。そのようなオプションは、再帰的に処理 されます。 -a[cdhlmns] リスト出力を行います。次の種類があります。 -ac 偽の条件を削除します -ad デバッグ用ディレクティブを削除します -ah 高級言語ソースを含みます -al アセンブリを含みます -am マクロ拡張を含みます -an フォーム処理 (forms processing) を削除します -as シンボルを含みます =file リスト出力を行うファイル名を設定します。 これらのオプションを組み合わせ可能です。例えば、-aln は、アセンブリ リストをフォーム処理無しで出力します。=file オプションは、使用され た場合、最後のサブオプションである必要があります。デフォルトのサブ オプションは、-a だけ指定すると -ahls になります。 --alternate 代替のマクロモードを始めます。 -D 無視されます。このオプションは、他のアセンブラ呼び出しとの互換のた めに受け付けられるものです。 --defsym sym=value 入力ファイルをアセンブルする前に、シンボル sym を value であると定 義します。value は、定数の整数である必要があります。C と同様、先行 する 0x は、16 進数値を示し、先行する 0 は、8 進数値を示します。 ".set" 疑似命令の使用によってソースファイル中でシンボルの値を上書き することができます。 -f "高速 (fast)" --- 空白類とコメントのプリプロセス処理をスキップしま す (ソースがコンパイラの出力であると仮定します)。 -g --gen-debug ターゲットに好まれるいずれかのデバッグ形式を使用して、各アセンブラ ソース行のためのデバッグ情報を生成します。これは、現在、STABS、 ECOFF または DWARF2 のいずれかを意味します。 --gstabs 各アセンブリの行に対し、スタブデバッグ情報 (stabs debugging information) を生成します。デバッガが扱える場合、アセンブリコードの デバッグに役立つかもしれません。 --gstabs+ 各アセンブリの行に対し、スタブデバッグ情報と、GNU 拡張とを生成しま す。この拡張は、おそらく gdb だけが扱うことができ、他のデバッガは、 クラッシュしたり、それを含むプログラムの読み込みを拒否したりする可 能性があります。このオプションは、アセンブラコードのデバッグにも使 えるかもしれません。現在のところ、GNU 拡張は、アセンブリ時のカレン ト作業ディレクトリの場所だけです。 --gdwarf-2 各アセンブリの行に対し、DWARF2 デバッグ情報を生成します。デバッガが 扱える場合、アセンブリコードのデバッグに役立つかもしれません。注 --- 本オプションは、すべてのターゲットでサポートされているわけでは なく、一部のみでサポートされています。 --help コマンド行オプションのまとめを表示し、終了します。 --target-help ターゲット固有のすべてのオプションのまとめを表示し、終了します。 -I dir dir を ".include" ディレクティブの検索リストに追加します。 -J 符号付き整数の桁溢れを警告しません。 -K ロングディスプレースメントのために差分テーブルが変更されたときに警 告を出させるようにします。 -L --keep-locals ローカルシンボルを (シンボル表) に保存します。これらのシンボルは、 システム特有のローカルのラベル接頭辞、通常、ELF システムのための .L または古い a.out システムのための L で始まります。 --listing-lhs-width=number アセンブラリストにおける出力データカラムの最大幅を number 語に設定 します。 --listing-lhs-width2=number アセンブラリストにおける継続行の出力データカラムの最大幅を number 語に設定します。 --listing-rhs-width=number リストで表示される入力ソース行の最大幅を number バイトに設定しま す。 --listing-cont-lines=number リスト中で入力 1 行に対応する表示行の最大を number + 1 行に設定しま す。 -o objfile as の出力オブジェクトファイル名を objfile に設定します。 -R データセクションをテキストセクションへ混入させます。 GAS のハッシュテーブルのデフォルトサイズを number に近い素数に設定 します。この値を増加すると、アセンブラの必要メモリを増加させること を犠牲にして、タスクを実行するアセンブラに掛かる時間の長さを減少さ せることができます。同様に、この値を減少すると、速度を犠牲にして必 要メモリを減少させることができます。 --reduce-memory-overheads このオプションは、アセンブリのプロセスをより遅くすることを犠牲にし て、GAS に必要なメモリを減少します。現在、このスイッチは、 --hash-size=4051 と同義語ですが、将来、他の効果もあるようになるかも しれません。 --statistics アセンブルに使用した最大空間 (バイト数) と合計時間 (秒数) を表示し ます。 --strip-local-absolute ローカルの絶対シンボルを出力先のシンボル方から削除します。 -v -version as のバージョンを表示します。 --version as のバージョンを表示し、終了します。 -W --no-warn 警告メッセージの出力を抑制します。 --fatal-warnings 警告を、エラーとして扱います。 --warn 警告を抑制しませんし、エラーとしても扱いません。 -w 無視されます。 -x 無視されます。 -Z エラーの後でもオブジェクトファイルを生成します。 -- | files ... アセンブル対象のソースファイルまたは標準入力です。 次のオプションは、ARC プロセッサ用に設定された場合に使用可能です。 -marc[5|6|7|8] このオプションは、コアプロセッサの種類を選択します。 -EB | -EL ビッグエンディアン (-EB) またはリトルエンディアン (-EL) 出力のどち らかを選択します。 次のオプションは、ARM プロセッサファミリ用に設定された場合に使用可能で す。 -mcpu=processor[+extension...] どの種類の ARM プロセッサがターゲットであるかを指定します。 -march=architecture[+extension...] どの種類の ARM アーキテクチャがターゲットであるかを指定します。 -mfpu=floating-point-format どの浮動小数点数アーキテクチャがターゲットであるかを指定します。 -mfloat-abi=abi どの浮動小数点数 ABI を使用するかを指定します。 -mthumb Thumb 命令のみのデコードを有効にします。 -mapcs-32 | -mapcs-26 | -mapcs-float | -mapcs-reentrant どのプロシージャ呼び出し規約を使用するのかを指定します。 -EB | -EL ビッグエンディアン (-EB) 出力かリトルエンディアン出力か (-EL) を選 択します。 -mthumb-interwork Thumb と ARM が相互動作することを考慮に入れてコード生成されたことを 指定します。 -k PIC コードが生成されたことを指定します。 CRIS 固有のオプションの記述は、info ページを参照してください。 次のオプションは、D10V プロセッサ用に設定された場合に使用可能です。 -O 命令を並列化して出力を最適化します。 次のオプションは、D30V プロセッサ用に設定された場合に使用可能です。 -O 命令を並列化して出力を最適化します。 -n nop が出力されたときに警告します。 -N 32 ビット掛け算の後に nop が出力されたときに警告します。 次のオプションは、80960 プロセッサ用に設定された場合に使用可能です。 -ACA | -ACA_A | -ACB | -ACC | -AKA | -AKB | -AKC | -AMC どの種類の 960 アーキテクチャがターゲットであるかを指定します。 -b 実際に行われた分岐に関する統計情報を収集するコードを追加します。 -no-relax ロングディスプレースメントの「比較-分岐」という命令列に対して変更を 加えません。場合によってはエラーが発生します。 次のオプションは、as が Ubicom IP2K シリーズ用に設定された場合に使用可 能です。 -mip2022ext 拡張 IP2022 命令が使用可能であることを指定します。 -mip2022 デフォルトの動作に戻します。これは、基本の IP2022 にだけ許される命 令の範囲に限定します。 次のオプションは、as が Renesas M32R M32C と M16C プロセッサのために設 定されるとき、利用可能です。 -m32c M32C 命令をアセンブルします。 -m16c M16C 命令 (デフォルト) をアセンブルします。 次のオプションは、as が Renesas M32R (旧三菱 M32R) シリーズのために設定 されたとき、利用可能です。 --m32rx M32R ファミリのどのプロセッサがターゲットであるかを指定します。デ フォルトは、通常、M32R ですが、本オプションを指定すると M32RX にな ります。 --warn-explicit-parallel-conflicts or --Wp 疑わしい parallel constructs に出会った場合、警告します。 --no-warn-explicit-parallel-conflicts or --Wnp 疑わしい parallel constructs に出会った場合でも、警告しません。 次のオプションは、Motorola 68000 シリーズ用に設定された場合に使用可能で す。 -l 2 ワードではなく、1 ワードの短い参照を未定義シンボルに適用します。 -m68000 | -m68008 | -m68010 | -m68020 | -m68030 | -m68040 | -m68060 | -m68302 | -m68331 | -m68332 | -m68333 | -m68340 | -mcpu32 | -m5200 68000 ファミリのどのプロセッサがターゲットかを指定します。デフォル トは、68020 ですが、設定時に変更可能です。 -m68881 | -m68882 | -mno-68881 | -mno-68882 ターゲットは、浮動小数点数コプロセッサを持っています (持っていませ ん)。デフォルトでは、68020, 68030, cpu32 用のコプロセッサを仮定しま す。素の 68000 は、68881 と互換ではありませんが、コプロセッサ命令を メインプロセッサでのエミュレーション可能ですので、両者の組み合わせ も指定可能です。 -m68851 | -mno-68851 ターゲットマシンは、メモリ管理ユニットコプロセッサを持っています (持っていません)。デフォルトでは、68020 以上用の MMU を仮定します。 PDP-11 機種依存機能オプションについての詳細は、PDP-11-Options を参照し てください。 -mpic | -mno-pic 位置独立 (または位置依存) コードを生成します。デフォルトは、-mpic です。 -mall -mall-extensions すべての命令セット拡張を有効にします。これがデフォルトです。 -mno-extensions すべての命令セット拡張を無効にします。 -mextension | -mno-extension 特定の命令セット拡張を有効 (無効) にします。 -mcpu 特定の CPU でサポートされる命令セット拡張を有効にし、他のすべての拡 張を無効にします。 -mmachine 特定のマシンモデルでサポートされる命令セット拡張を有効にし、他のす べての拡張を無効にします。 次のオプションは、picoJava プロセッサ用に設定された場合に使用可能です。 -mb "ビッグエンディアン" フォーマット出力を行います。 -ml "リトルエンディアン" フォーマット出力を行います。 次のオプションは、Motorola 68HC11 シリーズまたは 68HC12 シリーズ用に設 定された場合に使用可能です。 -m68hc11 | -m68hc12 | -m68hcs12 どのプロセッサがターゲットであるかを指定します。デフォルトは、アセ ンブラを構築するときの設定オプションで定義されています。 -mshort 16 ビット整数 ABI を使用することを指定します。 -mlong 32 ビット整数 ABI を使用することを指定します。 -mshort-double 32 ビット倍精度整数 ABI を使用することを指定します。 -mlong-double 64 ビット倍精度整数 ABI を使用することを指定します。 --force-long-branches 相対分岐が絶対分岐に変換されます。条件分岐、無条件分岐、サブルーチ ンへの分岐が対象です。 -S | --short-branches オフセットが範囲外の場合、相対分岐を絶対分岐に変換しません。 --strict-direct-mode 命令が直接アドレッシングモードをサポートしない場合、直接アドレッシ ングモードを拡張アドレッシングモードに変換しません。 --print-insn-syntax エラーの場合、命令の文法を表示します。 --print-opcodes 構文とともに命令のリストを印刷して、終了します。 --generate-example 命令となりうる各箇所に対して命令の例を 1 個表示し、終了します。本オ プションは、as のテストにのみ有用です。 次のオプションは、as が SPARC シリーズ用に設定された場合に使用可能で す。 -Av6 | -Av7 | -Av8 | -Asparclet | -Asparclite -Av8plus | -Av8plusa | -Av9 | -Av9a SPARC アーキテクチャの種類を明示的に選択します。 -Av8plus と -Av8plusa は、32 ビット環境を選択します。-Av9 と -Av9a は、64 ビット環境を選択します。 -Av8plusa と -Av9a は、SPARC V9 命令セットと UltraSPARC 拡張を有効 にします。 -xarch=v8plus | -xarch=v8plusa Solaris v9 アセンブラとの互換性用です。これらのオプションは、それぞ れ、-Av8plus と -Av8plusa と等価です。 -bump アセンブラが別のアーキテクチャに変わったときに警告します。 次のオプションは、as が 'c54x アーキテクチャ用に設定された場合に使用可 能です。 -mfar-mode 拡張アドレッシングモードを有効にします。すべてのアドレスと再配置情 報は、拡張アドレッシング (通常 23 ビット) と仮定されます。 -mcpu=CPU_VERSION コンパイル対象の CPU のバージョンを設定します。 -merrors-to-file FILENAME エラー出力をファイルにリダイレクトします。シェルがこの動作をサポー トしない腐ったシステムのためのものです。 次のオプションは、as が MIPS シリーズ用に設定された場合に使用可能です。 -G num 暗黙的に "gp" レジスタを介して参照されるオブジェクトの最大サイズを 設定します。ECOFF フォーマットを使用するターゲット、例えば Ultrix を実行する DECstation でのみ、受け付けられます。デフォルト値は、8 です。 -EB "ビッグエンディアン" フォーマット出力を行います。 -EL "リトルエンディアン" フォーマット出力を行います。 -mips1 -mips2 -mips3 -mips4 -mips5 -mips32 -mips32r2 -mips64 -mips64r2 特定の MIPS 命令セットアーキテクチャ (Instruction Set Architecture) レベル用のコードを生成します。-mips1 は、-march=r3000 の別名、 -mips2 は、-march=r6000 の別名、-mips3 は、-march=r4000 の別名、 -mips4 は、-march=r8000 の別名です。-mips5, -mips32, -mips32r2, -mips64, -mips64r2 は、それぞれ、一般の MIPS V, MIPS32, MIPS32 Release 2, MIPS64, MIPS64 Release 2 ISA に対応します。 -march=CPU MIPS CPU 固有のコードを生成します。 -mtune=cpu MIPS CPU 固有のスケジュールとチューニングを行います。 -mfix7000 -mno-fix7000 mfhi か mflo の命令の後続 2 命令に宛先レジスタからの読み出しが存在 する場合、NOP を挿入します。 -mdebug -no-mdebug stabs スタイルのデバッグ情報が、標準の ELF .stabs セクションではな く、ECOFF スタイルの .mdebug セクションへ行くようにします。 -mpdr -mno-pdr ".pdr" セクションの生成を制御します。 -mgp32 -mfp32 レジスタサイズは、通常、ISA と ABI で決まりますが、これらのフラグ は、ある種のレジスタが常に 32 ビット幅で使われるように強制します。 -mgp32 は、汎用レジスタの大きさを、-mfp32 は、浮動小数点数レジスタ の大きさを、制御します。 -mips16 -no-mips16 MIPS 16 プロセッサ用のコードを生成します。これは、アセンブリファイ ルの先頭に ".set mips16" を挿入することと等価です。-no-mips16 は、 本オプションをオフにします。 -msmartmips -mno-smartmips MIPS32 命令セットに SmartMIPS 拡張を有効にします。これは、アセンブ リファイルの始めに ".set smartmips" を置くのと同等です。 -mno-smartmips は、このオプションをオフにします。 -mips3d -no-mips3d MIPS-3D Application Specific Extension 用のコードを生成します。アセ ンブラに対し、MIPS-3D 命令を受け付けるよう指示します。-no-mips3d は、このオプションをオフにします。 -mdmx -no-mdmx MDMX Application Specific Extension 用のコードを生成します。アセン ブラに対し、MDMX 命令を受け付けるよう指示します。-no-mdmx は、この オプションをオフにします。 -mdsp -mno-dsp DSP Release 1 Application Specific Extension のためのコードを生成し ます。これは、DSP Release 1 命令を受け付けるようにアセンブラに伝え ます。-mno-dsp は、このオプションをオフにします。 -mdspr2 -mno-dspr2 DSP Release 2 Application Specific Extension のためのコードを生成し ます。このオプションは、-mdsp という意味を含みます。これは、DSP Release 2 命令を受け付けるようにアセンブラに伝えます。-mno-dspr2 は、このオプションをオフにします。 -mmt -mno-mt MT Application Specific Extension のためのコードを生成します。これ は、MT 命令を受け付けるようにアセンブラに伝えます。-mno-mt は、この オプションをオフにします。 --construct-floats --no-construct-floats --no-construct-floats オプションは、倍幅の浮動小数点数定数の構築を 無効化します。倍幅の浮動小数点数定数の構築とは、値の半分を 2 個、倍 幅レジスタを構築する 2 個の単幅浮動小数点数レジスタへロードすること で行われるものです。デフォルトでは、--construct-floats が選択されて おり、これらの浮動小数点数定数の構築を許しています。 --emulation=name as が他のターゲット用に設定されたかのようにエミュレートするよう、as に指示します。これは、すべての面にわたり、出力フォーマット (s-1ELF と ECOFF の内からのみ選択)、デバッグ情報を生成したりシンボル表情報 を格納する擬似オプコードの扱い、デフォルトのエンディアンも含まれま す。利用可能な設定名は、次の通りです: mipsecoff, mipself, mipslecoff, mipsbecoff, mipslelf, mipsbelf。最初の 2 個は、アセンブ ラが設定された第一ターゲットにおけるデフォルトから、エンディアンを 変えません。他のものは、デフォルトをリトルエンディアンまたはビッグ エンディアンにします。これは、名前中の b または l で示されていま す。いかなる場合でも、-EB または -EL は、エンディアンの選択に優先し ます。 本オプションが現在サポートされているのは、as の第一のターゲットが MIPS ELF か MIPS ECOFF に設定された場合のみです。さらに、両方の フォーマットのサポートが必要な場合、--enable-targets=... で設定時に 指定される第一のターゲットおよび他のターゲットには、他のフォーマッ トのサポートを含む必要があります。例えば、Irix 5 の設定は、両者のサ ポートを含みます。 最終的には、本オプションは、より多くの設定をサポートし、アセンブラ の動作に対してより細粒度の制御を行い、より多くのプロセッサでサポー トされることでしょう。 -nocpp as は、本オプションを無視します。ネイティブツールとの互換性とのため に受け付けられます。 --trap --no-trap --break --no-break 掛け算による溢れと 0 除算をどのように扱うかを制御します。--trap ま たは --no-break (同義語です) は、トラップ例外を発生します (命令セッ トアーキテクチャレベル 2 以上でのみ動作します)。--break または --no-trap (同義語です。デフォルト) は、ブレーク例外を発生します。 -n 本オプションを使用すると、マクロ由来の nop を生成するたびに as は、 警告を発生します。 次のオプションは、as が MCore プロセッサ用に設定された場合に使用可能で す。 -jsri2bsr -nojsri2bsr JSRI を BSR へ変換することを、有効または無効にします。デフォルトで は、有効です。コマンド行オプション -nojsri2bsr を使用して、これを無 効にできます。 -sifilter -nosifilter シリコンフィルタの動作を、有効または無効にします。デフォルトでは、 無効です。コマンド行オプション -sifilter を使用して、デフォルトに優 先させることができます。 -relax 長いディスプレースメント用の jump 命令を変更します。 -mcpu=[210|340] ターゲットハードウェアの CPU タイプを選択します。これにより、どの命 令をアセンブルするかを制御します。 -EB ビッグエンディアンのターゲット用にアセンブルします。 -EL リトルエンディアンのターゲット用にアセンブルします。 MMIX 固有のオプションの記述は、info ページを参照してください。 次のオプションは、as が Xtensa プロセッサ用に設定された場合に使用可能で す。 --text-section-literals | --no-text-section-literals --text-section-literals の場合、リテラルのプールがテキストセグメン トの中に散りばめられます。デフォルトは、--no-text-section-literals で、この場合リテラルは、出力ファイルの別のセクションに配置されま す。これらのオプションは、PC 相対の "L32R" 命令によって参照されるリ テラルのみ影響します。絶対モード "L32R" 命令のためのリテラルは、別 々に扱われます。 --absolute-literals | --no-absolute-literals "L32R" 命令が絶対または PC 相対アドレスを使用するかどうかをアセンブ ラに示します。デフォルトは、Xtensa プロセッサが絶対 "L32R" アドレス オプションをを含んでいるなら、絶対アドレスを仮定します。そうでなけ れば、PC 相対 "L32R" モードのみを使用することができます。 --target-align | --no-target-align ある程度のコード密度を犠牲にして分岐ペナルティを抑えるように、自動 的にアラインメントをすることを有効、もしくは無効にします。デフォル トは、--target-align です。 --longcalls | --no-longcalls 広範囲のアドレスをまたいで関数呼び出しができるよう、呼び出し命令を 変換することを有効、もしくは無効にします。デフォルトは、 --no-longcalls です。 --transform | --no-transform Xtensa 命令のすべてのアセンブラ変換を有効にするか、または無効にしま す。デフォルトは、--transform です。--no-transform は、命令がアセン ブリソースで正確に指定されなければならないとき、まれな場合のみに使 用されるべきです。 次のオプションは、as が Z80 ファミリプロセッサのために設定されるとき、 利用可能です。 -z80 Z80 プロセッサのためにアセンブルします。 -r800 -ignore-undocumented-instructions -Wnud 警告なしで R800 で動作している、文書化されていない Z80 命令のために アセンブルします。 -ignore-unportable-instructions -Wnup 警告なしで、すべての文書化されていない Z80 命令のためにアセンブルし ます。 -warn-undocumented-instructions -Wud R800 で動作している文書化されていない Z80 命令のために警報を出しま す。 -warn-unportable-instructions -Wup R800 で動作しない文書化されていない Z80 命令のために警報を出しま す。 -forbid-undocumented-instructions -Fud すべての文書化されていない命令をエラーとして扱います。 -forbid-unportable-instructions -Fup R800 で動作しない文書化されていない Z80 命令をエラーとして扱いま す。 関連項目 gcc(1)、ld(1) と binutils と ld の Info エントリ。 COPYRIGHT Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002, 2006, 2007 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". binutils-2.17.50 2010-10-30 AS(1)