次の方法で共有


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
    コマンドラインのヘルプ メッセージを出力します。

  • -idir[; dir]
    インクルード検索パスに指定した 1 つ以上のディレクトリを追加します。 セミコロン (;) を使用してディレクトリを分離します。

  • -ignorewarning_number
    指定した警告番号を無効にします。 使用可能な値については、 ARM アセンブラー診断メッセージを参照してください。

  • -listlist_file
    生成されたアセンブリ言語の詳細な一覧を作成して list_fileします。 list_file パラメーターは省略可能です。 省略した場合、アセンブラーはリスト ファイルを作成するために、source_fileの基本名に.lstを追加します。

  • -machinemachine
    PE ヘッダーに設定するコンピューターの種類を指定します。 armasmでは、machineに使用できる値は次のとおりです。

    • ARM - マシンの種類を IMAGE_FILE_MACHINE_ARMNTに設定します。 これは既定のオプションです。
    • THUMB - マシンの種類を IMAGE_FILE_MACHINE_THUMBに設定します。

    armasm64では、使用可能な値は次のとおりです。

    • ARM64- マシンの種類を IMAGE_FILE_MACHINE_ARM64に設定します。 これは既定のオプションです。
    • ARM64EC - マシンの種類を IMAGE_FILE_MACHINE_ARM64ECに設定します。
  • -noesc
    -noe
    \n\tなど、C スタイルのエスケープされた特殊文字は無視します。

  • -nologo
    著作権バナーを非表示にしてください。

  • -nowarn
    -now
    すべての警告メッセージを無効にします。

  • -oobject_file
    オブジェクト (出力) ファイルの名前を指定します。 -o オプションは省略可能です。代わりに、コマンド ラインの最後の要素としてオブジェクト ファイル名を指定できます。

  • -oldit
    armasmでのみ使用できます。 ARMv7 スタイルの IT ブロックを生成します。 既定では、ARMv8 と互換性のある IT ブロックが生成されます。

  • -predefinedirective
    -pddirective
    シンボルを事前に定義するには、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

関連項目

ARM アセンブラー診断メッセージ
ARM アセンブラー ディレクティブ