5

masm (ml.exe または ml64.exe) を使用して x64 および x86 用にアセンブルできる asm ファイルがあります。ファイルが x64 用にアセンブルされていることを検出するために、masm に定義済みのマクロがありますか? 現在、手動で_WIN64を定義してテストしていますが、それを確認するより良い方法があるはずです。

4

1 に答える 1

3

この同様の質問に対する回答の1つで提案されているように、RAXが定義されているかどうかをテストしてみてください: Detecting architecture at compile time from MASM/MASM64

このトリックを使用して、x64 asm コードが x32 ビルドでアセンブルされないようにする変数を作成します

IFDEF RAX
    END_IF_NOT_X64 equ <>
ELSE
    END_IF_NOT_X64 equ end  ; kill stop the assembler if we're not compiling for x64
ENDIF

END_IF_NOT_X64

; x64 code...
于 2012-12-25T06:29:44.903 に答える