Referencia de la línea de comandos de ARM
Los ensambladores ARM de Microsoft, armasm y armasm64, admiten varias opciones de línea de comandos. De forma predeterminada, armasm ensambla el lenguaje de ensamblado ARMv7 Thumb en la implementación de Microsoft del formato de archivo de objeto común (COFF). El ensamblador armasm64 crea código de objeto COFF para los destinos ARM64 y ARM64EC. El enlazador puede vincular objetos de código COFF que genera el ensamblador ARM y el compilador de C/C++. Puede vincularse junto con las bibliotecas de objetos que creó el bibliotecario.
Sintaxis
armasm
[opciones] source_file object_file
armasm
[options] source_file
armasm64
[opciones] source_file object_file
armasm64
[options] source_file
Parámetros
options
Combinación de cero o más de las siguientes opciones:
-16
Disponible solo en armasm. Ensambla el origen como instrucciones Thumb de 16 bits. Es la opción predeterminada.-32
Disponible solo en armasm. Ensambla el origen como instrucciones ARM de 32 bits.-coff_thumb2_only
Disponible solo en armasm. Permite solo el código Thumb-2.-errorReport:
opción
Esta opción está en desuso. En Windows Vista y versiones posteriores, los informes de errores se controlan a través de la configuración del Informe de errores de Windows (WER).-errors
nombredearchivo
-e
nombredearchivo
Redirige los mensajes de error y advertencia a nombre de archivo. De forma predeterminada, estos mensajes se envían astdout
.-funcOverride:
function_name
Disponible solo en armasm64. Emite compatibilidad con la invalidación de la función para function_name.-g
Genera información de depuración.-gh:SHA1
Usa el algoritmo hash criptográfico SHA-1 para generar una suma de comprobación de cada archivo de origen en la información de depuración. Invalida-gh:SHA256
.-gh:SHA256
Usa el algoritmo hash criptográfico SHA-256 para generar una suma de comprobación de cada archivo de origen en la información de depuración. Esta opción está activada de forma predeterminada en Visual Studio 2022, versión 17.0.-guard:ehcont
[-
]
Genera una lista ordenada de las direcciones virtuales relativas (RVA) de todos los destinos de continuación de control de excepciones válidos para un binario. Se usa en tiempo de ejecución para la validación del puntero de instrucciónNtContinue
ySetThreadContext
. La opción-guard:ehcont
está desactivada de forma predeterminada y debe habilitarse explícitamente. Para deshabilitar explícitamente esta opción, utilice-guard:ehcont-
. Esta opción está disponible en Visual Studio 2019, versión 16.7 y posteriores. La característica es compatible con procesos de 64 bits en un sistema operativo de 64 bits.-help
-h
Imprime el mensaje de ayuda de la línea de comandos.-i
dir[;
dir]
Agrega uno o varios directorios especificados para incluir la ruta de acceso de búsqueda. Separa los directorios mediante un punto y coma (;
).-ignore
warning_number
Deshabilita el número de advertencias especificadas. Para conocer los valores posibles, consulte Mensajes de diagnóstico del ensamblador ARM.-list
list_file
Crea una lista detallada del lenguaje de ensamblado que se generó para list_file. El parámetro list_file es opcional. Si se omite, el ensamblador anexa.lst
al nombre base de source_file para crear el archivo de lista.-machine
máquina
Especifica el tipo de máquina que se va a establecer en el encabezado PE. En armasm, los valores posibles para machine son los siguientes:- ARM: establece el tipo de máquina en
IMAGE_FILE_MACHINE_ARMNT
. Es la opción predeterminada. - THUMB: establece el tipo de máquina en
IMAGE_FILE_MACHINE_THUMB
.
En armasm64, los valores posibles son los siguientes:
- ARM64: establece el tipo de máquina en
IMAGE_FILE_MACHINE_ARM64
. Es la opción predeterminada. - ARM64EC: establece el tipo de máquina en
IMAGE_FILE_MACHINE_ARM64EC
.
- ARM: establece el tipo de máquina en
-noesc
-noe
Omite los caracteres especiales de escape de estilo C, como\n
o\t
.-nologo
Suprime el titular de copyright.-nowarn
-now
Deshabilita todos los mensajes de advertencia.-o
object_file
Especifica el nombre del archivo de objeto (salida). La opción-o
es opcional; en su lugar, puede especificar un nombre de archivo de objeto como último elemento de la línea de comandos.-oldit
Disponible solo en armasm. Genera bloques de TI de estilo ARMv7. De forma predeterminada, se generan bloques de TI compatibles con ARMv8.-predefine
directiva
-pd
directiva
Especifica una directiva SETA, SETL o SETS para predefinir un símbolo.
Ejemplo:armasm.exe -predefine "COUNT SETA 150" source.asm
Para obtener más información, consulte la Guía de referencia de armasm del compilador ARM.-sourcelink:
sourcelink_filename
sourcelink_filename especifica un archivo de configuración con formato JSON que contiene una asignación sencilla de rutas de acceso de archivo locales a direcciones URL para que los archivos de origen se muestren en el depurador. Para obtener más información sobre el formato de este archivo, consulte Esquema JSON de Source Link. Source Link es un sistema independiente del lenguaje y del control de código fuente, que se usa para la depuración de código fuente en archivos binarios. Source Link se admite para archivos binarios nativos a partir de Visual Studio 2017, versión 15.8. Para obtener información general sobre Source Link, consulte Source Link. Para obtener información sobre cómo usar Source Link en los proyectos y cómo generar el archivo SourceLink como parte del proyecto, consulte Uso de Source Link.-via
nombredearchivo
Lee argumentos de línea de comandos adicionales del nombre de archivo.
source_file
nombre del archivo de origen.
object_file
El último elemento de la línea de comandos puede especificar el nombre del objeto (salida). Si se omite y no se especifica ninguna opción -o
, el ensamblador anexa .obj
al nombre base de source_file para crear el archivo de objeto.
Comentarios
En el ejemplo siguiente se muestra cómo usar armasm en un escenario típico. En primer lugar, use armasm para compilar un archivo de origen de lenguaje de ensamblado (.asm) en un archivo de objeto (.obj). A continuación, use el compilador C de la línea de comandos de CL para compilar un archivo de origen (.c) y especifique también la opción del enlazador para vincular el archivo de objeto ARM.
armasm -o myasmcode.obj myasmcode.asm
cl myccode.c /link myasmcode.obj
Consulte también
Mensajes de diagnóstico del ensamblador de ARM
Directivas de ensamblador de ARM