ARM アセンブラーのコマンド ライン リファレンス
Microsoft ARM アセンブラー ( armasm および armasm64 では、いくつかのコマンド ライン オプションがサポートされています。 既定では、 armasm は、ARMv7 Thumb アセンブリ言語を Microsoft の Common Object File Format (COFF) 実装にアセンブルします。 armasm64 アセンブラーは、ARM64 および ARM64EC ターゲットの COFF オブジェクト コードを作成します。 リンカーは、ARM アセンブラーと C/C++ コンパイラの両方によって生成された COFF コード オブジェクトをリンクできます。 また、ライブラリアンによって作成されたオブジェクト ライブラリとリンクさせることもできます。
構文
armasm
[options] source_file object_file
armasm
[options] source_file
armasm64
[options] source_file object_file
armasm64
[options] source_file
パラメーター
options
次のオプションを 0 個または複数組み合わせることができます。
-16
armasmでのみ使用できます。 ソースを 16 ビットの Thumb 命令としてアセンブルします。 これは既定のオプションです。-32
armasmでのみ使用できます。 ソースを 32 ビットの ARM 命令としてアセンブルします。-coff_thumb2_only
armasmでのみ使用できます。 Thumb-2 コードのみを許可します。-errorReport:
option
このオプションは非推奨です。 Windows Vista 以降では、エラー報告は Windows エラー報告 (WER) の設定によって制御されます。-errors
filename
-e
filename
エラーと警告メッセージを filename にリダイレクトします。 既定では、これらのメッセージはstdout
に送信されます。-funcOverride:
function_name
armasm64でのみ使用できます。 function_nameのサポートをオーバーライドする関数を出力します。-g
デバッグ情報を生成します。-gh:SHA1
SHA-1 暗号化ハッシュ アルゴリズムを使用して、デバッグ情報の各ソース ファイルのチェックサムを生成します。-gh:SHA256
をオーバーライドします。-gh:SHA256
SHA-256 暗号化ハッシュ アルゴリズムを使用して、デバッグ情報の各ソース ファイルのチェックサムを生成します。 このオプションは、Visual Studio 2022 バージョン 17.0 以降では既定でオンになっています。-guard:ehcont
[-
]
バイナリのすべての有効な例外処理継続ターゲットの相対仮想アドレス (RVA) の並べ替えられたリストを生成します。 実行時に、NtContinue
およびSetThreadContext
命令ポインターの検証に使用されます。 既定では、-guard:ehcont
は無効になっており、明示的に有効にする必要があります。 このオプションを明示的に無効にするには、-guard:ehcont-
を使用します。 このオプションは、Visual Studio 2019 バージョン 16.7 以降で使用できます。 この機能は、64 ビット OS 上の 64 ビット プロセスでサポートされています。-help
-h
コマンドラインのヘルプ メッセージを出力します。-i
dir[;
dir]
インクルード検索パスに指定した 1 つ以上のディレクトリを追加します。 セミコロン (;
) を使用してディレクトリを分離します。-ignore
warning_number
指定した警告番号を無効にします。 使用可能な値については、 ARM アセンブラー診断メッセージを参照してください。-list
list_file
生成されたアセンブリ言語の詳細な一覧を作成して list_fileします。 list_file パラメーターは省略可能です。 省略した場合、アセンブラーはリスト ファイルを作成するために、source_fileの基本名に.lst
を追加します。-machine
machine
PE ヘッダーに設定するコンピューターの種類を指定します。 armasmでは、machineに使用できる値は次のとおりです。- ARM - マシンの種類を
IMAGE_FILE_MACHINE_ARMNT
に設定します。 これは既定のオプションです。 - THUMB - マシンの種類を
IMAGE_FILE_MACHINE_THUMB
に設定します。
armasm64では、使用可能な値は次のとおりです。
- ARM64- マシンの種類を
IMAGE_FILE_MACHINE_ARM64
に設定します。 これは既定のオプションです。 - ARM64EC - マシンの種類を
IMAGE_FILE_MACHINE_ARM64EC
に設定します。
- ARM - マシンの種類を
-noesc
-noe
\n
や\t
など、C スタイルのエスケープされた特殊文字は無視します。-nologo
著作権バナーを非表示にしてください。-nowarn
-now
すべての警告メッセージを無効にします。-o
object_file
オブジェクト (出力) ファイルの名前を指定します。-o
オプションは省略可能です。代わりに、コマンド ラインの最後の要素としてオブジェクト ファイル名を指定できます。-oldit
armasmでのみ使用できます。 ARMv7 スタイルの IT ブロックを生成します。 既定では、ARMv8 と互換性のある IT ブロックが生成されます。-predefine
directive
-pd
directive
シンボルを事前に定義するには、SETA、SETL、または SETS ディレクティブを指定します。
例:armasm.exe -predefine "COUNT SETA 150" source.asm
詳細については、「ARM コンパイラ armasm のリファレンス ガイド」を参照してください。-sourcelink:
sourcelink_filename
sourcelink_filename は、デバッガーに表示するソース ファイルの URL へのローカル ファイル パスの単純なマッピングを含む JSON 形式の構成ファイルを指定します。 このファイルの形式の詳細については、「ソース リンク JSON スキーマ」を参照してください。 ソース リンクは、バイナリのソース デバッグを提供するための言語およびソース管理に依存しないシステムです。 Source Link は、Visual Studio 2017 バージョン 15.8 以降のネイティブ バイナリでサポートされています。 ソース リンクの概要については、「ソース リンク」を参照してください。 プロジェクトでソース リンクを使用する方法、およびプロジェクトの一部として SourceLink ファイルを生成する方法については、ソース リンクの使用に関する記事を参照してください。-via
filename
filename から追加のコマンド ライン引数を読み取ります。
source_file
ソース ファイルの名前。
object_file
コマンド ラインの最後の要素は、オブジェクト (出力) ファイルの名前を指定できます。 省略され、-o
オプションが指定されていない場合、アセンブラーはオブジェクト ファイルを作成するsource_fileの基本名に.obj
を追加します。
解説
次の例は、一般的なシナリオで armasm を使用する方法を示しています。 まず、armasm を使用して、アセンブリ言語ソース (.asm) ファイルをオブジェクト (.obj) ファイルにビルドします。 次に、CL コマンドラインの C コンパイラを使用してソース (.c) ファイルをコンパイルします。また、リンカー オプションを指定して、ARM オブジェクト ファイルとリンクさせることもできます。
armasm -o myasmcode.obj myasmcode.asm
cl myccode.c /link myasmcode.obj