Share via


ARM アセンブラーのコマンド ライン リファレンス

Microsoft ARM アセンブラー、armasmarmasm64 では、いくつかのコマンド ライン オプションがサポートされています。 既定では、 armasm は ARMv7 Thumb アセンブリ言語を共通オブジェクト ファイル形式 (COFF) の Microsoft 実装にアセンブルします。 armasm64 アセンブラーは、ARM64 および ARM64EC ターゲットの COFF オブジェクト コードを作成します。 リンカーは、ARM アセンブラーと C/C++ コンパイラの両方によって生成された COFF コード オブジェクトをリンクできます。 また、ライブラリアンによって作成されたオブジェクト ライブラリとリンクさせることもできます。

構文

armasm [options] source_fileobject_file
armasm [オプション] source_file

armasm64 [options] source_fileobject_file
armasm64 [オプション] source_file

パラメーター

options
次のオプションを 0 個または複数組み合わせることができます。

  • -16
    armasm でのみ使用できます。 ソースを 16 ビットの Thumb 命令としてアセンブルします。 これは既定のオプションです。

  • -32
    armasm でのみ使用できます。 ソースを 32 ビットの ARM 命令としてアセンブルします。

  • -coff_thumb2_only
    armasm でのみ使用できます。 Thumb-2 コードのみを許可します。

  • -errorReport:option
    このオプションは非推奨です。 Windows Vista 以降では、エラー報告は Windows エラー報告 (WER) の設定によって制御されます。

  • -errorsfilename
    -efilename
    エラーと警告メッセージを 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) の並べ替えられたリストを生成します。 実行時に命令ポインターの検証にNtContinueSetThreadContext使用されます。 既定では、-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 では、マシンに使用できる値は次のとおりです。

    • ARM - マシンの種類を に IMAGE_FILE_MACHINE_ARMNT設定します。 これは既定のオプションです。
    • THU MB (メガバイト)— マシンの種類を にIMAGE_FILE_MACHINE_THUMB設定します。

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

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

  • -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 ファイルを生成する方法については、ソース リンクの使用に関する記事を参照してください。

  • -viafilename
    ファイル名から 追加のコマンド ライン引数を読み取ります

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 アセンブラー ディレクティブ